Token-based Replay
   HOME

TheInfoList



OR:

Token-based replay technique is a
conformance checking Business process conformance checking (a.k.a. conformance checking for short) is a family of process mining techniques to compare a process model with an event log of the same process. It is used to check if the actual execution of a business proc ...
algorithm that checks how well a process conforms with its model by replaying each trace on the model (in Petri net notation ). Using the four counters ''produced tokens, consumed tokens, missing tokens, and remaining tokens,'' it records the situations where a transition is forced to fire and the remaining tokens after the replay ends. Based on the count at each counter, we can compute the ''fitness value'' between the trace and the model.


The algorithm

The token-replay technique uses four counters to keep track of a trace during the replaying: * : Produced tokens * : Consumed tokens * : Missing tokens (consumed while not there) * : Remaining tokens (produced but not consumed) Invariants: * At any time: p+m \ge c \ge m * At the end: r = p + m - c At the beginning, a token is produced for the source place (p = 1) and at the end, a token is consumed from the sink place (c' = c + 1). When the replay ends, the fitness value can be computed as follows: \frac(1 - \frac) + \frac(1 - \frac)


Example

Suppose there is a process model in
Petri net A Petri net, also known as a place/transition (PT) net, is one of several mathematical modeling languages for the description of distributed systems. It is a class of discrete event dynamic system. A Petri net is a directed bipartite graph that ...
notation as follows:


Example 1: Replay the trace () on the model M

* Step 1: A token is initiated. There is one produced token (p = 1). * Step 2: The activity \mathbf consumes 1 token to be fired and produces 2 tokens (p = 1 + 2 = 3 and c = 1). * Step 3: The activity \mathbf consumes 1 token and produces 1 token (p = 3 + 1 = 4 and c = 1 + 1 = 2). * Step 4: The activity \mathbf consumes 1 token and produces 1 token (p = 4 + 1 = 5 and c = 2 + 1 = 3). * Step 5: The activity \mathbf consumes 2 tokens and produces 1 token (p = 5 + 1 = 6, c = 3 + 2 = 5). * Step 6: The token at the end place is consumed (c = 5 + 1 = 6). The trace is complete. The fitness of the trace (\mathbf) on the model \mathbf is: \frac(1 - \frac) + \frac(1 - \frac) = \frac(1 - \frac) + \frac(1 - \frac) = 1


Example 2: Replay the trace (a, b, d) on the model M

* Step 1: A token is initiated. There is one produced token (p = 1). * Step 2: The activity \mathbf consumes 1 token to be fired and produces 2 tokens (p = 1 + 2 = 3 and c = 1). * Step 3: The activity \mathbf consumes 1 token and produces 1 token (p = 3 + 1 = 4 and c = 1 + 1 = 2). * Step 4: The activity \mathbf needs to be fired but there are not enough tokens. One artificial token was produced and the missing token counter is increased by one (m = 1). The artificial token and the token at place mathbf/math> are consumed (c = 2 + 2 = 4) and one token is produced at place end (p = 4 + 1 = 5). * Step 5: The token in the end place is consumed (c = 4 + 1 = 5). The trace is complete. There is one remaining token at place mathbf/math> (r = 1). The fitness of the trace (\mathbf) on the model \mathbf is: \frac(1 - \frac) + \frac(1 - \frac) = \frac(1 - \frac) + \frac(1 - \frac) = 0.8


References

{{reflist Algorithms